home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 February: Technology Seed / Mac Tech Seed Feb '97.toast / ODF Release 3 / Developer University / DU Projects / DataSave / Sources / Content.h < prev    next >
Encoding:
Text File  |  1996-12-11  |  2.3 KB  |  79 lines  |  [TEXT/CWIE]

  1. //    Release Version:    $ ODF 3 $
  2. //    Copyright:            (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  3.  
  4. #ifndef CONTENT_H
  5. #define CONTENT_H
  6.  
  7. //========================================================================================
  8. #ifndef DEFINES_K
  9. #include "Defines.k"
  10. #endif
  11.  
  12. // ----- Framework Includes -----
  13. #ifndef FWCONTNT_H
  14. #include "FWContnt.h"
  15. #endif
  16.  
  17. #ifndef PIZZA_H
  18. #include "Pizza.h"            //  CPizza
  19. #endif
  20.  
  21. #ifndef FWTCOLL_H
  22. #include "FWTColl.h"            // FW_TOrderedCollection
  23. #endif
  24.  
  25. //========================================================================================
  26. class CDataSavePart;
  27. class FW_CPresentation;
  28.  
  29. //========================================================================================
  30. class CPizzaCollection : public FW_TOrderedCollection<CPizza> {
  31. public:
  32.     FW_DECLARE_AUTO(CPizzaCollection)
  33.     CPizzaCollection()
  34.             : FW_TOrderedCollection<CPizza>() {}
  35.     ~CPizzaCollection() {}
  36. };
  37.  
  38. //========================================================================================
  39. class CPizzaCollectionIterator : public FW_TOrderedCollectionIterator<CPizza> {
  40. public:
  41.     FW_DECLARE_AUTO(CPizzaCollectionIterator)
  42.     CPizzaCollectionIterator(CPizzaCollection* collection)
  43.         :    FW_TOrderedCollectionIterator<CPizza>(collection){}
  44.     ~CPizzaCollectionIterator() {}
  45. };
  46.  
  47. //========================================================================================
  48. class CDataSaveContent : public FW_CContent {
  49. public:
  50.     FW_DECLARE_AUTO(CDataSaveContent)
  51.                                 CDataSaveContent(Environment* ev, CDataSavePart* part);
  52.     virtual                     ~CDataSaveContent();
  53. // new members
  54. public:
  55.     virtual CPizzaCollection*    MyGetPizzaList();
  56.     virtual void                MyAddPizza(Environment* ev, CPizza* pizza);
  57.     virtual void                MyRemoveLastPizza(Environment* ev, CPizza* pizza);
  58. // overrides
  59. protected:
  60.     virtual void                ExternalizeKind(Environment* ev,
  61.                                     ODStorageUnit* storageUnit,
  62.                                     FW_CKind* kind,
  63.                                     FW_StorageKinds storageKind,
  64.                                     FW_CPromise* promise,
  65.                                     FW_CCloneInfo* cloneInfo);
  66.     virtual FW_Boolean            InternalizeKind(Environment* ev,
  67.                                     ODStorageUnit* storageUnit, 
  68.                                     FW_CKind* kind,
  69.                                     FW_StorageKinds storageKind,
  70.                                     FW_CCloneInfo* cloneInfo);
  71. // new members
  72. private:
  73.     ODSShort            fNumPizzas;
  74.     CPizzaCollection*    fPizzaList;
  75.     CDataSavePart*         fPart;
  76. };
  77.  
  78. //========================================================================================
  79. #endif